package com.hex.ds.hdtp.core.inf.data.transfer.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.hex.ds.hdtp.core.inf.data.transfer.po.DataTransferTaskPo;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * @Package: com.hex.ds.hdtp.core.inf.data.transfer.mapper
 * @ClassName IDataTransferTaskMapper
 * @Description: 数据迁移任务-数据映射接口
 * @Author: wz.li
 * @Date 2023/8/17 17:20
 * @Version v2.0.2
 **/
@Repository
public interface IDataTransferTaskMapper extends BaseMapper<DataTransferTaskPo> {

    /*
     * @Method: queryListByPage <br>
     * @Param: [toMyBatisPlusPage, dataTransferTaskPo] <br>
     * @Return: com.baomidou.mybatisplus.core.metadata.IPage<com.hex.ds.hdtp.core.inf.data.transfer.po.DataTransferTaskPo> <br>
     * @Description：分页查询<br>
     * @Author： wz.li<br>
     * @Date： 2023/8/17 19:36 <br>
     * @Version： V2.0.2<br>
     */
    IPage<DataTransferTaskPo> queryListByPage(IPage<DataTransferTaskPo> toMyBatisPlusPage,
                                              @Param("po") DataTransferTaskPo dataTransferTaskPo);

    /*
     * @Method: modifySuccessNum <br>
     * @Param: [pkId] <br>
     * @Return: void <br>
     * @Description：更新数据同步任务成功数量<br>
     * @Author： wz.li<br>
     * @Date： 2023/8/22 19:33 <br>
     * @Version： V2.0.2<br>
     */
    void modifySuccessNum(String pkId);

    /*
     * @Method: modifyFailNum <br>
     * @Param: [pkId] <br>
     * @Return: void <br>
     * @Description：更新数据同步任务失败数量<br>
     * @Author： wz.li<br>
     * @Date： 2023/8/22 19:34 <br>
     * @Version： V2.0.2<br>
     */
    void modifyFailNum(String pkId);

    /*
     * @Method: modifyStatus <br>
     * @Param: [pkId] <br>
     * @Return: void <br>
     * @Description：更新数据同步任务状态<br>
     * @Author： wz.li<br>
     * @Date： 2023/8/22 19:34 <br>
     * @Version： V2.0.2<br>
     */
    void modifyStatus(String endTime, String pkId);
    /**
     * @Method queryByType
     * @Param
     * @Param dataTransferTaskPo
     * @Return java.util.List<java.lang.String>
     * @Description 拆寻
     * @Author xin.zhao
     * @Date 2023/10/20 9:41
     * @Version V1.0
     */
    List<String> queryByType(@Param("po") DataTransferTaskPo dataTransferTaskPo);
}
